/**
 * Copyright © 2016-2025 The Thingsboard Authors
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
@import "../../../../../scss/constants";

:host {
  height: 100%;
  max-height: 100vh;
  display: grid;
  grid-template-rows: min-content minmax(auto, 1fr) min-content;

  .tb-loader {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    height: 300px;
    max-height: 100%;

    .label {
      margin-bottom: 0;
      text-align: center;
    }
  }

  .tb-font-14 {
    font-size: 14px;
  }

  .tb-flex-1 {
    flex: 1;
  }

  @media #{$mat-sm} {
    width: 705px;
  }

  @media #{$mat-gt-sm} {
    width: 1080px;
  }
}

:host-context(.mat-mdc-dialog-container) {
  .tb-dialog-actions {
    display: flex;
    gap: 8px;
    padding: 8px 16px;
  }

  .mat-mdc-dialog-content {
    max-height: 80vh;
    padding: 0 16px 16px 16px;
    border-top: 16px solid #fff;
  }
}

:host ::ng-deep {
  .tb-markdown-view {
    padding: 16px 16px 32px 16px;
    div {
      background-color: #F3F6FA;
      &.code-wrapper button.clipboard-btn {
        right: -2px !important;
        p {
          color: $tb-primary-color !important;
        }
        p, div {
          background-color: unset !important;
        }
        div {
          img {
            display: none;
          }
          &:after {
            content: "";
            position: initial;
            display: block;
            width: 18px;
            height: 18px;
            background: $tb-primary-color;
            mask-image: url(/assets/copy-code-icon.svg);
            -webkit-mask-image: url(/assets/copy-code-icon.svg);
            mask-repeat: no-repeat;
            -webkit-mask-repeat: no-repeat;
          }
        }
        &.multiline {
          right: -2px !important;
        }
      }
    }
    & > *:not(ul) {
      padding-right: unset !important;
      padding-left: unset !important;
    }
    pre[class*="language-"] {
      border: 1px solid $tb-primary-color !important;
    }
  }
  .mdc-button__label > span {
    .mat-icon {
      vertical-align: text-bottom;
      box-sizing: initial;
    }
  }

  .mat-mdc-tab-header {
    position: sticky;
    top: 0;
    z-index: 10;
    background-color: #fff;
  }

  .tabs-icon {
    margin-right: 8px;
  }

  .tb-form-panel.tb-tab-body {
    padding: 16px 0 0;
  }

  .mat-mdc-tab-body {
    padding: 16px 0;
  }
}
